525. 连续数组
525. 连续数组
Similar Question
leading to the advanced question
Solution Tips
方案一: 转化 + 前缀和 + 哈希表
var findMaxLength = function(nums) {
let maxLength = 0;
const map = new Map();
let counter = 0;
map.set(counter, -1);
const n = nums.length;
for (let i = 0; i < n; i++) {
const num = nums[i];
if (num == 1) {
counter++;
} else {
counter--;
}
if (map.has(counter)) {
const prevIndex = map.get(counter);
maxLength = Math.max(maxLength, i - prevIndex);
} else {
map.set(counter, i);
}
}
return maxLength;
};